import { IConversation } from "./domain/IConversation";
import { IMessage } from "./domain/IMessage";
import { IStoreMessageService } from "./IStoreMessageService";

/**
 * Service implementation for storing and retrieving conversation messages using MongoDB.
 * 
 * @remarks
 * This class implements the {@link IStoreMessageService} interface and provides methods
 * for managing conversations and messages, such as creating conversations, querying,
 * updating titles, retrieving messages, cleaning message history, and adding messages
 * to chat history. All methods are currently not implemented.
 * 
 * @example
 * ```typescript
 * const service = new MongoStoreMessageService();
 * await service.CreateConv(conv);
 * ```
 */
export class MongoStoreMessageService implements IStoreMessageService {
    CreateConv(conv: IConversation): Promise<IConversation> {
        throw new Error("Method not implemented.");
    }
    GetConversationById(id: string): Promise<IConversation> {
        throw new Error("Method not implemented.");
    }
    UpdateConvTitle(id: string, title: string): Promise<void> {
        throw new Error("Method not implemented.");
    }
    QueryConvs(params: any): Promise<IConversation[]> {
        throw new Error("Method not implemented.");
    }
    GetMessagesByConvId(convId: string): Promise<IMessage[]> {
        throw new Error("Method not implemented.");
    }
    CleanMessageByConvId(convId: string): Promise<void> {
        throw new Error("Method not implemented.");
    }
    AddToChatHistory(message: IMessage): Promise<IMessage> {
        throw new Error("Method not implemented.");
    }
}